home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / Fresco / build / Unix / config / cf / xf86.rules < prev    next >
Text File  |  1995-07-12  |  3KB  |  124 lines

  1. XCOMM $XConsortium: xf86.rules,v 1.7 95/01/25 16:34:39 kaleb Exp $
  2.  
  3. /*
  4.  * These rules are needed to build the Xfree86 X Servers
  5.  */
  6.  
  7. #ifndef CPPOnlyAsm
  8. #define CPPOnlyAsm(basename,options) RemoveFile(basename.i)        @@\
  9.     $(CPP) AsmDefines $(DEFINES) $(INCLUDES) options basename.s | \    @@\
  10.         grep -v '^\#' > basename.i
  11. #endif
  12.  
  13. #ifndef AssembleObject
  14. #define AssembleObject(flags) CPPOnlyAsm($*,flags)            @@\
  15.     $(AS) -o $*.o $*.i                        @@\
  16.     RemoveFile($*.i)
  17. #endif
  18.  
  19. #ifndef NormalAsmObjectRule
  20. #define NormalAsmObjectRule()                        @@\
  21. .s.o:                                    @@\
  22.     AssembleObject($(_NOOP_))                    @@\
  23.                                     @@\
  24. .s.i:                                    @@\
  25.     CPPOnlyAsm($*,$(_NOOP_))
  26. #endif
  27.  
  28. #ifndef ObjectFromSpecialAsmSource
  29. #define ObjectFromSpecialAsmSource(dst,src,flags)            @@\
  30. dst.s:  src.s                                @@\
  31.     RemoveFile($@)                            @@\
  32.     $(LN) $? $@                            @@\
  33.                                     @@\
  34. dst.o:  dst.s                                @@\
  35.     AssembleObject(flags)                        @@\
  36.                                     @@\
  37. dst.i:  dst.s                                @@\
  38.     CPPOnlyAsm(dst,flags)                        @@\
  39.                                     @@\
  40. depend:: dst.s                                @@\
  41.                                     @@\
  42. clean::                                    @@\
  43.     RemoveFile(dst.s)
  44. #endif
  45.  
  46.  
  47. /*
  48.  * Rules for building config files from scripts
  49.  */
  50.  
  51. #ifndef Depend
  52. # define Depend depend
  53. #endif
  54.  
  55. #ifndef ConfigTargetLong
  56. #define ConfigTargetLong(target,dep,script,args,extra)            @@\
  57. all:: Configure                                @@\
  58.                                     @@\
  59. Configure:: target.o                            @@\
  60.                                     @@\
  61. target.c: script dep                            @@\
  62.     $(MAKE) $(MFLAGS) Makefile                    @@\
  63.     $(MAKE) $(MFLAGS) extra Concat(Build,target)            @@\
  64.                                     @@\
  65. Concat(Build,target):                            @@\
  66.     $(RM) target.c                            @@\
  67.     $(SHELL) script args                        @@\
  68.                                     @@\
  69. clean::                                    @@\
  70.     $(RM) target.c
  71. #endif
  72.  
  73. #define ConfigTarget(target,dep,script,args) ConfigTargetLong(target,dep,script,args,Depend)
  74.  
  75. #define ConfigTargetNoDepend(target,dep,script,args) ConfigTargetLong(target,dep,script,args,)
  76.  
  77. /*
  78.  * Rules for installing LinkKit parts (target is install.linkkit)
  79.  */
  80.  
  81. #ifndef InstallLinkKitNonExecFile
  82. #define InstallLinkKitNonExecFile(file,dest)                @@\
  83. install.linkkit:: file                            @@\
  84.     MakeDir($(DESTDIR)dest)                        @@\
  85.     $(INSTALL) -c $(INSTDATFLAGS) file $(DESTDIR)dest
  86. #endif
  87.  
  88. #ifndef InstallLinkKitLibrary
  89. #define InstallLinkKitLibrary(libname,dest)                @@\
  90. install.linkkit:: Concat(lib,libname.a)                    @@\
  91.     MakeDir($(DESTDIR)dest)                        @@\
  92.     $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.a) $(DESTDIR)dest @@\
  93.     RanLibrary($(RANLIBINSTFLAGS) Concat($(DESTDIR)dest/lib,libname.a))
  94. #endif
  95.  
  96. #ifndef InstallLinkKitNamedLibrary
  97. #define InstallLinkKitNamedLibrary(libname,dlibname,dest)        @@\
  98. install.linkkit:: Concat(lib,libname.a)                    @@\
  99.     MakeDir($(DESTDIR)dest)                        @@\
  100.     $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.a) \        @@\
  101.       Concat($(DESTDIR)dest/lib,dlibname.a)                @@\
  102.     RanLibrary($(RANLIBINSTFLAGS) Concat($(DESTDIR)dest/lib,dlibname.a))
  103. #endif
  104.  
  105. #ifndef InstallLinkKitNamedNonExec
  106. #define InstallLinkKitNamedNonExec(srcname,dstname,dest)        @@\
  107. install.linkkit:: srcname                        @@\
  108.     MakeDir($(DESTDIR)dest)                        @@\
  109.     $(INSTALL) -c $(INSTDATFLAGS) srcname $(DESTDIR)dest/dstname
  110. #endif
  111.  
  112. #ifndef InstallLinkKitNamedProg
  113. #define InstallLinkKitNamedProg(srcname,dstname,dest)            @@\
  114. install.linkkit:: srcname                        @@\
  115.     MakeDir($(DESTDIR)dest)                        @@\
  116.     $(INSTALL) -c $(INSTBINFLAGS) srcname $(DESTDIR)dest/dstname
  117. #endif
  118.  
  119. #ifndef InstallLinkKitSubdirs
  120. #define InstallLinkKitSubdirs(dirs) \
  121. NamedTargetSubdirs(install.linkkit,dirs,"installing link kit",DESTDIR='$(DESTDIR)',install.linkkit)
  122. #endif
  123.  
  124.